package edu.gmu.projects.fireresponder.fusionengine;

import edu.gmu.projects.fireresponder.environment.Asset;
import edu.gmu.projects.fireresponder.environment.Location;

public interface IFusionInterface {

	public double getFireProbability(Location location);
	public double getFireProbability(double latitude, double longitude);
	public double getFireProbability(Location location, int timeInMillis);
	public double getFireProbability(double latitude, double longitude, int timeInMillis);
	public double getFireProbability(Asset asset);
	public double getFireProbability(Asset asset, int timeInMillis);
	public double getPercentageOnFire(double minCertainty, Asset asset);
	public double getPercentageOnFire(double minCertainty, Asset asset, int timeInMillis);

	public double getFireDistance(double latitude, double longitude, double minProb);
	public double getFireDistance(Asset asset, double minProb);
	public double getFireDistance(Location location, double minProb);

	public double getPresenceProbability(Location location);
	public double getPresenceProbability(double latitude, double longitude);
	public double getPresenceProbability(Location location, int timeInMillis);
	public double getPresenceProbability(double latitude, double longitude, int timeInMillis);
	public double getPresenceProbability(Asset asset);
	public double getPresenceProbability(Asset asset, int timeInMillis);

	public void addListener(FusionEngineListener listener);
	public void removeListener(FusionEngineListener listener);
}
